package com.javabasic.algorithm.leetcode;

/**
 * @Author xiongmin
 * @Description //TODO
 * @Date 2019/12/10 20:18
 * @Version 1.0
 **/
public class RemoveElement {
    /**
     * 空间复杂度O(N) 时间复杂度：N - N^2
     * @param nums
     * @param val
     * @return
     */
    public int removeElement(int[] nums, int val) {
        int len = 0;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i] != val) {
                len++;
                int temp = i;
                while (temp-1 >= 0 && nums[temp-1] == val) {
                    int t = nums[temp-1];
                    nums[temp-1] = nums[temp];
                    nums[temp] = t;
                    temp--;
                }
            }
        }
        return len;
    }
}
